package com.hyt.it.ogt.ykcj.service.exam;

import java.util.List;

import org.springframework.web.multipart.MultipartFile;

import com.hyt.it.ogt.ykcj.common.core.domain.AjaxResult;
import com.hyt.it.ogt.ykcj.domain.exam.ExamPostInfo;
import com.hyt.it.ogt.ykcj.domain.vo.ExamPostInfoReq;
import com.hyt.it.ogt.ykcj.domain.vo.ExamPostInfoRsp;
import com.hyt.it.ogt.ykcj.domain.vo.ExamPostInfoVo;
import com.hyt.it.ogt.ykcj.domain.vo.ImportPostInfoVo;

/**
 * 招考职位信息Service接口
 * 
 * @author admin
 * @date 2021-09-09
 */
public interface IExamPostInfoService
{

    /**
     * 查询招考职位信息
     * 
     * @param id 招考职位信息ID
     * @return 招考职位信息
     */
    public ExamPostInfoVo selectExamPostInfoById(String id);

    /**
     * 查询招考职位信息列表
     * 
     * @param examPostInfoReq 招考职位信息
     * @return 招考职位信息集合
     */
    public List<ExamPostInfoRsp> selectExamPostInfoList(ExamPostInfoReq examPostInfoReq);

    /**
     * 新增招考职位信息
     * 
     * @param examPostInfo 招考职位信息
     * @return 结果
     */
    public int insertExamPostInfo(ExamPostInfo examPostInfo);

    /**
     * 修改招考职位信息
     * 
     * @param examPostInfo 招考职位信息
     * @return 结果
     */
    public int updateExamPostInfo(ExamPostInfo examPostInfo);

    /**
     * 批量删除招考职位信息
     * 
     * @param ids 需要删除的招考职位信息ID
     * @return 结果
     */
    public int deleteExamPostInfoByIds(String[] ids);

    /**
     * 删除招考职位信息信息
     * 
     * @param id 招考职位信息ID
     * @return 结果
     */
    public int deleteExamPostInfoById(String id);

    /**
     * 下载职位导入模板
     *
     * @return
     */
    public AjaxResult downloadTemplate();


    /**
     * 导入Excel文件
     */
    public List<ImportPostInfoVo> impotExcelPostInfo(MultipartFile multipartFile, String examId);

    /**
     * 批量插入操作
     */
    public void batchInsertExamPostInfo(List<ImportPostInfoVo> list);

}
